package com.qcq.wecheck.config;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.redis.connection.RedisConnectionFactory;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.serializer.RedisSerializer;
import org.springframework.data.redis.serializer.StringRedisSerializer;

/**
 * <p>
 * 解决存入时序列化问题, 比如字符串前面有未知字符串出现
 * </p>
 *
 * @author O
 * @version 1.0
 * @since 2018/10/13
 */
@Configuration
public class RedisConfig {


	@Bean(name = "redisTemplate")
	public RedisTemplate<String, String> redisTemplate(RedisConnectionFactory factory) {
		RedisTemplate<String, String> template = new RedisTemplate<>();
		RedisSerializer<String> redisSerializer = new StringRedisSerializer();
		template.setConnectionFactory(factory);
		//key序列化方式
		template.setKeySerializer(redisSerializer);
		//value序列化
		template.setValueSerializer(redisSerializer);
		//value hashmap序列化
		template.setHashValueSerializer(redisSerializer);
		//key haspmap序列化
		template.setHashKeySerializer(redisSerializer);
		//
		return template;
	}
}
